package com.wangzha.common.model.base;

import com.jfinal.plugin.activerecord.IBean;
import com.jfinal.plugin.activerecord.Model;

@SuppressWarnings({"serial", "unchecked"})
public abstract class BaseDevice<M extends BaseDevice<M>> extends Model<M> implements IBean {

	public M setId(java.math.BigInteger id) {
		set("id", id);
		return (M)this;
	}
	
	public java.math.BigInteger getId() {
		return get("id");
	}

	/**
	 * 激活码
	 */
	public M setActivationCode(String activationCode) {
		set("activation_code", activationCode);
		return (M)this;
	}
	
	/**
	 * 激活码
	 */
	public String getActivationCode() {
		return getStr("activation_code");
	}

	/**
	 * 设备名称
	 */
	public M setName(String name) {
		set("name", name);
		return (M)this;
	}
	
	/**
	 * 设备名称
	 */
	public String getName() {
		return getStr("name");
	}

	/**
	 * 用户
	 */
	public M setUserCode(String userCode) {
		set("user_code", userCode);
		return (M)this;
	}
	
	/**
	 * 用户
	 */
	public String getUserCode() {
		return getStr("user_code");
	}

	/**
	 * 设备分组
	 */
	public M setGroupId(Integer groupId) {
		set("group_id", groupId);
		return (M)this;
	}
	
	/**
	 * 设备分组
	 */
	public Integer getGroupId() {
		return getInt("group_id");
	}

	/**
	 * 创建时间
	 */
	public M setCreateTime(java.util.Date createTime) {
		set("create_time", createTime);
		return (M)this;
	}
	
	/**
	 * 创建时间
	 */
	public java.util.Date getCreateTime() {
		return getDate("create_time");
	}

	/**
	 * 最后连线时间
	 */
	public M setUpdateTime(java.util.Date updateTime) {
		set("update_time", updateTime);
		return (M)this;
	}
	
	/**
	 * 最后连线时间
	 */
	public java.util.Date getUpdateTime() {
		return getDate("update_time");
	}

	/**
	 * 授权版本
	 */
	public M setType(Integer type) {
		set("type", type);
		return (M)this;
	}
	
	/**
	 * 授权版本
	 */
	public Integer getType() {
		return getInt("type");
	}

	/**
	 * 在线状态
	 */
	public M setOnline(String online) {
		set("online", online);
		return (M)this;
	}

	/**
	 * 在线状态
	 */
	public String getOnline() {
		return getStr("online");
	}


	/**
	 * 创建时间
	 */
	public M setEffectiveTime(java.util.Date effectiveTime) {
		set("effective_time", effectiveTime);
		return (M)this;
	}

	/**
	 * 创建时间
	 */
	public java.util.Date getEffectiveTime() {
		return getDate("effective_time");
	}

}
